import React from 'react'
import ReactDom from 'react-dom'
import axios from 'axios'

import Api from './common/ApiConfig'
import App from './Main.js'



// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    if (global.token) {
      config.headers['x-access-token'] = global.token;
      config.headers['Access-Control-Allow-Origin'] = '*';
    }
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    return response;
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  });

Array.prototype.findIndex = Array.prototype.findIndex = Array.prototype.findIndex || function(evaluator, thisArg) {
        'use strict';
        if (!this) {
          throw new TypeError('Array.prototype.some called on null or undefined');
        }
    
        if (typeof(evaluator) !== 'function') {
            if (typeof(evaluator) === 'string') {
                // 尝试将其转换为函数
                if ( ! (evaluator = eval(evaluator)) ){
                    throw new TypeError();
                }
            } else {
                throw new TypeError();
            }
        }
        
        var i;
        if (thisArg === undefined) {  // 为 thisArg 优化
            for (i in this) {
                if (evaluator(this[i], i, this)) {
                    return i;
                }
            }
            return -1;
        }
        for (i in this) {
            if (evaluator.call(thisArg, this[i], i, this)) {
                return i;
            }
        }
        return -1;
};

ReactDom.render(<App />, document.getElementById('root'))